package com.kgis.fm.business.effects
{
	import mx.effects.IEffectInstance;
	import mx.effects.TweenEffect;
	
	import spark.effects.Animate;
	
	public class ExtendPolylineEffect extends TweenEffect
	{
		private var _pctStart:Number = 0;
		private var _pctEnd:Number = 100;
		private var _alsoAnimateAlpha:Boolean = false;
		private var _playReverseDirection:Boolean = false;
		
		public function ExtendPolylineEffect(target:Object=null)
		{
			super(target);
			instanceClass = ExtendPolylineEffectInstance;
		}
		
		public function get playReverseDirection() : Boolean
		{
			return this._playReverseDirection;
		}
		
		public function set playReverseDirection(param:Boolean) : void
		{
			this._playReverseDirection = param;
			
		}
		
		public function get alsoAnimateAlpha() : Boolean
		{
			return this._alsoAnimateAlpha;
		}
		
		public function set alsoAnimateAlpha(param:Boolean) : void
		{
			this._alsoAnimateAlpha = param;
			
		}
		
		public function get pctEnd() : Number
		{
			return this._pctEnd;
		}
		
		public function set pctEnd(param1:Number) : void
		{
			this._pctEnd = param1;
			return;
		}
		
		public function get pctStart() : Number
		{
			return this._pctStart;
		}
		
		public function set pctStart(param:Number) : void
		{
			this._pctStart = param;
			
		}
		
		override public function getAffectedProperties() : Array
		{
			return [];
		}
		
		override protected function initInstance(param:IEffectInstance) : void
		{
			super.initInstance(param);
			var instance:* = ExtendPolylineEffectInstance(param);
			instance.pctStart = this.pctStart;
			instance.pctEnd = this.pctEnd;
			instance.alsoAnimateAlpha = this.alsoAnimateAlpha;
			instance.playReverseDirection = this.playReverseDirection;
			instance.gatherPolylineInfo();
		}
	}
}